﻿using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class D07_Ray1 : MonoBehaviour
{
    public LayerMask layer = -1;//层  -1表示所有层
    private GameObject currentGo;//当前选中的碰撞器组件
    private void Select()
    {
        if (!Input.GetMouseButtonDown(0))//点击鼠标左键发射射线
        {
            return;
        }
        Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
        //调试画(非必要)
        Debug.DrawRay(ray.origin, ray.direction * 1000, Color.red, 10);//10是要画的长度

        RaycastHit hitInfo;
        if (Physics.Raycast(ray, out hitInfo, 1000, layer))
        {
            if (currentGo) currentGo.transform.ChangeColor(Color.white);//当前选中的变白
            hitInfo.collider.ChangeColor(Color.red);//本次点击的变红
            currentGo = hitInfo.transform.gameObject;//本次点击的成为当前选中
        }
    }
    private void Update()
    {
        Select();
    }
}